<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Emitters that Support Report Rendering</title>
<style>@import url("file:/C:/eclipse/Eclipse 3.2/plugins/org.eclipse.sdk_3.2.0.v20060214/book.css");</style>
<style>@import url("file:/C:/eclipse/Eclipse 3.2/configuration/org.eclipse.osgi/bundles/120/1/.cp/schema.css");</style>
</HEAD>
<BODY>
<H1><CENTER>Emitters that Support Report Rendering</CENTER></H1>
<p></p>
<h6 class=CaptionFigColumn id=header>Identifier: </h6>org.eclipse.birt.report.engine.emitters<p></p>
<h6 class=CaptionFigColumn id=header>Since: </h6>2.0
<p></p>

<p>
<h6 class=CaptionFigColumn id=header>Description: </h6>This extension point allows new output formats to be supported in presentation engine.  The plugin registry uses this extension point registration to discover all supported output formats.</p>
<p><h6 class=CaptionFigColumn id=header>Configuration Markup:</h6></p>
<p class=code id=dtd>&lt;!ELEMENT <a name="e.extension">extension</a> (<a href="#e.emitter">emitter</a>+)&gt;</p>
<p class=code id=dtd>&lt;!ATTLIST extension</p>
<p class=code id=dtdAttlist>point&nbsp;CDATA #REQUIRED<p class=code id=dtdAttlist>id&nbsp;&nbsp;&nbsp;&nbsp;CDATA #IMPLIED<p class=code id=dtdAttlist>name&nbsp;&nbsp;CDATA #IMPLIED&gt;</p>
<p></p>
<p class=ConfigMarkup id=elementDesc>
root element for the emitters extension</p>
<br>
<ul class=ConfigMarkup id=attlistDesc>
<li><b>point</b> - a fully qualified identifier of the target extension point</li>
<li><b>id</b> - an optional identifier of the extension instance</li>
<li><b>name</b> - an optional name of the extension instance</li>
</ul>
<br><p class=code id=dtd>&lt;!ELEMENT <a name="e.emitter">emitter</a> (<a href="#e.reportItem">reportItem</a>*)&gt;</p>
<p class=code id=dtd>&lt;!ATTLIST emitter</p>
<p class=code id=dtdAttlist>id&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CDATA #IMPLIED<p class=code id=dtdAttlist>class&nbsp;&nbsp;&nbsp;&nbsp;CDATA #REQUIRED<p class=code id=dtdAttlist>format&nbsp;&nbsp;&nbsp;CDATA #REQUIRED<p class=code id=dtdAttlist>mimeType&nbsp;CDATA #REQUIRED&gt;</p>
<p></p>
<p class=ConfigMarkup id=elementDesc>
an emitter that exports one or more output formats</p>
<br>
<ul class=ConfigMarkup id=attlistDesc>
<li><b>id</b> - an optional identifier of the emitter extension</li>
<li><b>class</b> - the java class that implements the <code>IContentEmitter</code> interface</li>
<li><b>format</b> - The output format that the emitter supports</li>
<li><b>mimeType</b> - The MIME type for the supported output format</li>
</ul>
<br><p class=code id=dtd>&lt;!ELEMENT <a name="e.reportItem">reportItem</a> EMPTY&gt;</p>
<p class=code id=dtd>&lt;!ATTLIST reportItem</p>
<p class=code id=dtdAttlist>name&nbsp;&nbsp;CDATA #REQUIRED<p class=code id=dtdAttlist>class&nbsp;CDATA #REQUIRED<p class=code id=dtdAttlist>id&nbsp;&nbsp;&nbsp;&nbsp;CDATA #IMPLIED&gt;</p>
<p></p>
<p class=ConfigMarkup id=elementDesc>
allows a developer to define emitter for a report item. Used mainly for extended item, but can also be used for standard report items.</p>
<br>
<ul class=ConfigMarkup id=attlistDesc>
<li><b>name</b> - the name of the report item that the emitterClass supports. For example, "chart" for chart extension item</li>
<li><b>class</b> - the emitter class that supports this type of report item for a specific format</li>
<li><b>id</b> - an optional identifier of the report item emitter extension</li>
</ul>
<br><h6 class=CaptionFigColumn id=header>Examples: </h6>The following is a sample usage of the emitterSet extension point:

<p>
<pre>

<p class=code id=tag>&lt;extension 
 point=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitterSet&quot;</p><p class=code id=tag>
 name = <p class=code id=cstring>&quot;Engine Emitters&quot;</p><p class=code id=tag>&gt;</p>
 <p class=code id=tag>&lt;emitter 
  format=<p class=code id=cstring>&quot;HTML&quot;</p><p class=code id=tag> 
  id=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.html&quot;</p><p class=code id=tag>
  class=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.html.HTMLReportEmitter&quot;</p><p class=code id=tag>&gt;</p>
  <p class=code id=tag>&lt;reportItem name=<p class=code id=cstring>&quot;chart&quot;</p><p class=code id=tag>
   id=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.chart.html&quot;</p><p class=code id=tag>
   class=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.html.HTMLChartEmitter&quot;</p><p class=code id=tag>&gt;</p>
  <p class=code id=tag>&lt;/reportItem&gt;</p>
 <p class=code id=tag>&lt;/emitter&gt;</p>
 <p class=code id=tag>&lt;emitter 
  format=<p class=code id=cstring>&quot;FO&quot;</p><p class=code id=tag> 
  mimeType=<p class=code id=cstring>&quot;text/html&quot;</p><p class=code id=tag>
  id=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.fo&quot;</p><p class=code id=tag>
  class=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.html.FOReportEmitter&quot;</p><p class=code id=tag>&gt;</p>
  <p class=code id=tag>&lt;reportItem name=<p class=code id=cstring>&quot;chart&quot;</p><p class=code id=tag>
     id=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.chart.fo&quot;</p><p class=code id=tag>
   Class=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.html.FOChartEmitter&quot;</p><p class=code id=tag>/&gt;</p>
 <p class=code id=tag>&lt;/emitter&gt;</p>
 <p class=code id=tag>&lt;emitter
  mimeType=<p class=code id=cstring>&quot;application/pdf&quot;</p><p class=code id=tag>
  id=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.pdf&quot;</p><p class=code id=tag>
  class=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.html.FOPReportEmitter&quot;</p><p class=code id=tag>&gt;</p> 
  <p class=code id=tag>&lt;reportItem name=<p class=code id=cstring>&quot;chart&quot;</p><p class=code id=tag>
   id=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.chart.pdf&quot;</p><p class=code id=tag>
   emitterClass=<p class=code id=cstring>&quot;org.eclipse.birt.report.engine.emitter.html.FOChartEmitter&quot;</p><p class=code id=tag>/&gt;</p>
  <p class=code id=tag>&lt;/emitter&gt;</p>
<p class=code id=tag>&lt;/extension&gt;</p>
</pre>
<p>

Notice that in this example, the same class is used for both PDF and FO format. BIRT currently uses FO to generate both FO and PDF output.
<p></p>

<h6 class=CaptionFigColumn id=header>API Information: </h6>The value of the class attribute for the emitter element must be the fully qualified name of a class that implement  <code>org.eclipse.birt.engine.emitter.IContentEmitter</code>.<p>
The value of the emitterClass attribute for the reportItem element must be a fully  qualified name of a class that implements <code>org.eclipse.birt.engine.extension.IReportItemEmitter</code>.
<p></p>

<h6 class=CaptionFigColumn id=header>Supplied Implementation: </h6><code>org.eclipse.birt.report.engine.emitter.html.HTMLReportEmitter</code> ---- An HTML emitter that supports report rendering to HTML format.
<code>org.eclipse.birt.report.engine.layout.impl.ReportLayoutEngine</code> ---- An emitter that supports report rendering to PDF format.
<p></p>

<br>
<p class=note id=copyright>
Copyright (c) 2005 Actuate Corporation. All rights reserved. This program and 
the accompanying materials are made available under the terms of the Eclipse 
Public License v2.0 which accompanies this distribution, and is available at 
https://www.eclipse.org/legal/epl-2.0/<br><br>

Contributors: Actuate Corporation - initial API and implementation
<p></p>

</p>
</BODY>
</HTML>
